﻿using Dapper;
using Estsh.Core.Base;
using Estsh.Core.Model.Extend.Models;
using Estsh.Core.Models;
using Estsh.Core.Repositories;
using Newtonsoft.Json.Linq;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Estsh.Core.Wms.IRepositories
{
    public interface IScatteredOutStockRepository : IBaseRepository<BaseEntity>
    {
        public List<WmsOutstock> GetScatteredOutStockOrderList(string orderNo);
        public List<WmsOutstock_Extend> GetScatteredOutStockOrderListByOrderNo(string orderNo);
        public SysStock GetStockByCartonNo(string cartonNo);
        public List<SysStock> GetStockByCartonNoList(string cartonNo);
        public List<WmsOutstock> GetOutStockByOrderNo(string orderNo);
        public List<WmsOutstockDetail> GetOutstockByOrderNoSrcErp(string orderNo, string srcErpWare);
        public List<WmsOutstockDetail> GetOutstockByOrderNoPartNo(string orderNo, string partNo);
        public List<WmsOutstock> GetOutstockByOrderNo(string orderNo);
        public List<WmsOutstockDetail> GetOutstockDetailByOrderNo(string orderNo);
        public List<WmsOutstockDetail> GetFinishOutStockDetailByOrderNo(string orderNo);
        public SysPart GetPartNOInfoByPartNo(string partNo);
        public int SQLTransaction(List<string> sqlStrings, List<DynamicParameters> parameterList);

        public List<WmsRackPackage_Extend> GetCartonInfo(string rackNo);

        public List<WmsOutstockDetail> GetOutstockOrderNo(string orderNo);
    }
}
